package com.fintech.third.model.shzx;

import java.io.Serializable;
import java.util.List;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;

/**
 * 信息报告
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlRootElement(name = "网络金融版个人信用报告")
public class CreditReport implements Serializable {

	private static final long serialVersionUID = 1L;

		/**
		 * 1：查询到结果2：被查询人不存在3：超过查询限制4：其他错误
		 */
		private String errors;
		
		/**
		 * 当state不为1时，存储出错信息原因的说明
		 */
		private int status;
		
		
        public String getErrors() {
			return errors;
		}

		public void setErrors(String errors) {
			this.errors = errors;
		}

		public int getStatus() {
			return status;
		}

		public void setStatus(int status) {
			this.status = status;
		}

		@XmlElement(name = "信用报告头")
        private CreditHeader creditHeader;

        @XmlElement(name = "个人身份信息")
        private PersonalIDInfo personalIDInfo;

        @XmlElement(name = "贷款申请信息")
        private List<LoanApplyInfo> loanApplyInfo;

        @XmlElement(name = "贷款交易信息")
        private LoanTxnInfo loanTxnInfo;

        @XmlElement(name = "为他人担保信息")
        private GuaranteeInfo guaranteeInfo;

        @XmlElement(name = "特殊交易信息")
        private SpecialTxnInfo specialTxnInfo;

        @XmlElement(name = "查询信息")
        private QueryInfo queryInfo;
        @XmlElement(name = "个人声明信息")
        private PersonalDeclareInfo personalDeclareInfo;
        @XmlElement(name = "资信提示信息")
        private CreditHintInfo creditHintInfo;

        public CreditHeader getCreditHeader() {
            return creditHeader;
        }

        public void setCreditHeader(CreditHeader creditHeader) {
            this.creditHeader = creditHeader;
        }

        public PersonalIDInfo getPersonalIDInfo() {
            return personalIDInfo;
        }

        public void setPersonalIDInfo(PersonalIDInfo personalIDInfo) {
            this.personalIDInfo = personalIDInfo;
        }

        public List<LoanApplyInfo> getLoanApplyInfo() {
            return loanApplyInfo;
        }

        public void setLoanApplyInfo(List<LoanApplyInfo> loanApplyInfo) {
            this.loanApplyInfo = loanApplyInfo;
        }

        public LoanTxnInfo getLoanTxnInfo() {
            return loanTxnInfo;
        }

        public void setLoanTxnInfo(LoanTxnInfo loanTxnInfo) {
            this.loanTxnInfo = loanTxnInfo;
        }

        public GuaranteeInfo getGuaranteeInfo() {
            return guaranteeInfo;
        }

        public void setGuaranteeInfo(GuaranteeInfo guaranteeInfo) {
            this.guaranteeInfo = guaranteeInfo;
        }

        public SpecialTxnInfo getSpecialTxnInfo() {
            return specialTxnInfo;
        }

        public void setSpecialTxnInfo(SpecialTxnInfo specialTxnInfo) {
            this.specialTxnInfo = specialTxnInfo;
        }

        public QueryInfo getQueryInfo() {
            return queryInfo;
        }

        public void setQueryInfo(QueryInfo queryInfo) {
            this.queryInfo = queryInfo;
        }

        public PersonalDeclareInfo getPersonalDeclareInfo() {
            return personalDeclareInfo;
        }

        public void setPersonalDeclareInfo(PersonalDeclareInfo personalDeclareInfo) {
            this.personalDeclareInfo = personalDeclareInfo;
        }

        public CreditHintInfo getCreditHintInfo() {
            return creditHintInfo;
        }

        public void setCreditHintInfo(CreditHintInfo creditHintInfo) {
            this.creditHintInfo = creditHintInfo;
        }
}
